Making My Own Autograd Engine
Many people who "understand" "AI" do nothing but call libraries someone else has written for them. In fact, I would say the vast majority of "AI Experts" do nothing but re-arrange existing solutions with potentially novel data.
Without any real understanding of the mechanisms they're using they cannot develop anything new or interesting. Their skills are so dependent on arbitrary decisions and libraries, that the vast majority of them wouldn't be able to do even the simplest machine learning tasks if you took them out of their Python interpreter. People who operate like that will never be mages and will never understand the arcane arts.
In an effort to avoid being like these sad, sorry, pathetic, non-mages, I have spent a large amount of my life working with what, at the time, I considered to be the bare minimum, an autograd library. This ensured that I at the very least understood the forwards pass, optimizers, normalization, and regularization techniques I was using. This served me well, and when I left the comfort of my own notebook I was always able to export the weights and write the forwards pass in whatever environment just fine.
Of course, there was a critical mistake in the making- I was using a library (disgusting behaviour). To remedy this and atone for my sins against The Computer, I have decided to write my own autograd library. To prove that at the very least I understand the basics of how one works.
